Trains, busses, airplanes and Personal Area Networks (PANs) are examples of use cases where moving network technologies can be applied. A moving wireless network is a cluster consisting of mobile nodes (MNs) and mobile routers (MRs). A mobile router routes IP traffic between a mobile node and the Internet (or other IP network). A mobile router may be connected to another moving network or directly to the Internet via an access point (AP). In the former case, a set of nested mobile networks results. FIG. 1 illustrates a set of three nested mobile networks, where each mobile router is co-located with an access point. Each mobile router has at least two interfaces. One interface (e.g. IEEE 802.11) is used to connect the mobile router to an access point. The other interface (e.g. IEEE 802.11) works as an access point for the mobile router's clients (either mobile nodes or other mobile routers). In FIG. 1, the MR#1 is directly attached to an access point (AP#4) that is located in the Internet. At the same time, MR#1 works as an access point for its own clients, e.g. MR#2. As a result, MR#2 provides connectivity to the Internet through MR#1. Finally, MR#3 is connected through the MR#2 and MR#1 to the Internet. A mobile router may make “handover” from one other router to another (or to/from the Internet) as the routers move.
Each access point broadcasts “beacons” to advertise its existence. A beacon typically contains a network ID and radio specific parameters. As an example, IEEE 802.11 Access Points (or nodes of an “ad-hoc network which does not employ access points) send out a beacon message every 50 to 200 ms. The size of this beacon is typically 60 to 90 bytes and the information it contains is usually long-term (i.e. it doesn't change very often). It is possible to add new fields to the beacons, but increasing their size reduces the available bandwidth for user data. Any additions should be as small as possible.
Moving networks use the concept of a service set identifier (SSID) which is a code attached to all packets on a wireless network to identify each packet as part of that network. The code is a case sensitive text string which consists of a maximum of 32 alphanumeric characters. All wireless devices attempting to communicate with each other must share the same SSID. In an “infrastructure network” employing access points, a network operator will typically set the SSID at the access point for that network and the access point will include its SSID in the beacons that it broadcasts. In the case of nested moving networks (as illustrated in FIG. 1), each sub-network will have its own SSID which is broadcast by the access point of that sub-network.
The SSID is in effect a “user-friendly” address based upon which a mobile node or mobile router can decide whether or not to attach to the broadcasting access point. If a mobile node or mobile router makes a decision to attach, it uses a Media Access Control (MAC) address of the access point in the one-round trip attachment exchange in order to attach to the access point. The MAC address of the access point is a statically defined address and is included in the beacon.
A potential problem with the existing moving network architecture and functionality is illustrated in FIG. 2. In FIG. 2, the mobile router (MR#1) is listening to beacons that are sent by a number of different access points including two fixed Internet access points AP#4 and AP#5. If MR#1 does not have any a priori knowledge of the access points, it may attach to any one of the available access points. Thus, if MR#1 decides to attach to MR#2 or MR#3 (or indeed to itself), the result will be a routing loop. Packets that are sent out from the client side interface of MR#3 will arrive directly or indirectly at the same mobile router's access point interface. The routing loop situation is illustrated in FIG. 3.
One known way to identify the existence of a routing loop is to send a probe message from a mobile router after attaching it to an access point. If the sending router receives its own probe message it knows that it is in a routing loop. However, this approach is slow, particularly where there are several nested mobile routers attached to each other. Another possible solution is to add information to routing advertisement messages (specified as part of the IPv6 protocol suite). This information might comprise a unique chain identifier and a sequence number. However, the trade-off is that the client must be attached to the access point before it can receive router advertisements. Furthermore, this approach cannot be applied in IPv4 networks, as router advertisements work only with IPv6.